double power(double x,int n){

	double r=1;

	if (n==0) return 1;
	while (n){
		if (n % 2){
			r*=x;
			n--;
		}
		else{
			x*=x;
			n/=2;
		}
	}
	return r;
}

unsigned int factorial(int x){
	if (x==0) return 1;
	return x*factorial(x-1);
}

double modul(double x){
	if (x<0) return -x;
	else return x;
}
